package com.linxuan.reggie.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.linxuan.reggie.dto.OrdersDto;
import com.linxuan.reggie.entity.Orders;

public interface OrderService extends IService<Orders> {

    /**
     * 向订单表以及订单详情表添加订单信息
     * @param orders 订单信息
     */
    void submit(Orders orders);

    /**
     * 查询订单表以及订单详情表组装成OrdersDto类型返回
     * @param page 分页页数
     * @param pageSize 每页数量
     * @return OrderDto
     */
    Page<OrdersDto> getOrdersDtoPage(int page, int pageSize);

    /**
     * 再来一单功能
     * 根据订单主键ID查询订单号，根据订单号查询订单详情信息，将这些订单详情信息添加至购物车
     * @param id 订单主键ID
     */
    boolean again(Long id);
}
